]> dgit.raspbian.org Git - gnome-shell.git/log
gnome-shell.git
17 years agoShellAppSystem: Support loading a .desktop file directly
Colin Walters [Wed, 5 Aug 2009 15:27:06 +0000 (11:27 -0400)]
ShellAppSystem: Support loading a .desktop file directly

Previously, ShellAppSystem only loaded (and cached) the set of
.desktop files from applications.menu and settings.menu, using
the gnome-menus library.  The ShellAppInfo structure was
a "hidden typedef" for GMenuTreeEntry.

But we need to support loading an arbitrary .desktop file.  Thus,
refactor the ShellAppInfo into a real struct, with a refcount,
and allow it to point to either a GMenuTreeEntry or a GKeyFile.

Also, in the case where we fail to lookup an icon for an
application, ensure we return a 0 opacity texture.

17 years agoAdd shell_texture_cache_load_from_name
Colin Walters [Thu, 30 Jul 2009 04:17:25 +0000 (00:17 -0400)]
Add shell_texture_cache_load_from_name

Utility function to load a texture for a themed icon from a
string name.

17 years agoFix negative height request in WellGrid
Siegfried-Angel Gevatter Pujals [Sun, 9 Aug 2009 01:34:35 +0000 (03:34 +0200)]
Fix negative height request in WellGrid

When WellGrid had no child it was doing a division by zero,
which screwed up the calculation for the height request and
having it ask for a negative number. This commit fixes this
by always requesting 0 in this case.

17 years agoConsider height when positioning windows in the overlay
Siegfried-Angel Gevatter Pujals [Sat, 8 Aug 2009 20:10:40 +0000 (22:10 +0200)]
Consider height when positioning windows in the overlay

I've done some little modifications to the window positioning code
used in the overlay so that it considers the height of the windows
and they don't overlap or get out of the workspace.

I've also raised the hard-coded scales a bit to have the windows as
big as possible without overlapping (this could use some testing on
a non-widescreen monitor).

17 years agoappDisplay: Reimplement well layout to be width-independent
Colin Walters [Thu, 6 Aug 2009 19:39:09 +0000 (15:39 -0400)]
appDisplay: Reimplement well layout to be width-independent

Use ShellGenericContainer to implement a fully dynamic layout
for the application well.  It's still fixed to 4 columns by default,
but no longer requires a fixed width to be passed in on start.

With another chunk of work, it could likely try to adjust to
the case where we can only fit fewer than 4 items in the well.

Remove the border highlighting on mouseover, since that caused
reallocations, and the grid layout isn't trivial.

Delete the unused shell_global_get_word_with function.

17 years agoDefine stable ordering for application favorites and running apps
Colin Walters [Sat, 8 Aug 2009 14:03:08 +0000 (10:03 -0400)]
Define stable ordering for application favorites and running apps

For both of these, because of optimizations a few patches ago, we
ended up relying on hash table ordering which caused instability
in the application well among other things. Define an ordering
for both.

The favorites is just the order of the GConf keys, and new items
get appended.  In the future we should allow insertion at any
point which the grid could use.

For running applications order, define a new "initially_seen_sequence"
transient variable which is just an monotonically incrementing
integer assigned to an application for the first time we saw it
running in this session.  When an application is closed, it's reset.

17 years agoChange to $HOME before launching gnome-panel again
Owen W. Taylor [Sat, 8 Aug 2009 14:44:22 +0000 (10:44 -0400)]
Change to $HOME before launching gnome-panel again

When exiting from --replace mode, we want to start the new
gnome-panel with a reasonable working directory so that if, you say,
open a terminal from it it doesn't start off in the gnome-shell
directory.

(gnome-shell itself is running in $HOME because mutter changes
directory itself at startup.)

Reported by Mathieu Bridon
http://bugzilla.gnome.org/show_bug.cgi?id=591145

17 years agoBug 590985 - Fix frequent apps list being empty
Colin Walters [Sat, 8 Aug 2009 15:57:09 +0000 (11:57 -0400)]
Bug 590985 - Fix frequent apps list being empty

We shouldn't append .desktop again, that was a leftover from
the old WM_CLASS based application code.

17 years agodnd: Fix used of undefined variables
Colin Walters [Thu, 6 Aug 2009 23:34:12 +0000 (19:34 -0400)]
dnd: Fix used of undefined variables

The variables this._yOffset and this._xOffset are included in the
drop coordinates, but as far as I can tell never defined.  Looking
back on the commit that introduced this code, they weren't removed
from anywhere else either.

The drop coordinates seem correct without them, so just delete them.

17 years agoEnable hot corner for triggering the overview mode
Marina Zhurakhinskaya [Fri, 7 Aug 2009 20:45:35 +0000 (16:45 -0400)]
Enable hot corner for triggering the overview mode

Use the 1x1 actor in the top left corner of the screen to enter and leave
the overview mode by just moving the mouse over to it.

No delay is used for triggering the hot corner because a delay significant
enough to allow moving away the mouse to avoid triggering it ruins the desired
flow when triggering the hot corner is actually intended.

The hot corner is not enabled in the full screen mode because the application
or the virtual system might have a hot corner of its own in that place.

17 years agoBug 591077 - Hide overlay when activating an application
Colin Walters [Fri, 7 Aug 2009 17:30:53 +0000 (13:30 -0400)]
Bug 591077 - Hide overlay when activating an application

It's easier to explicitly call Main.overlay.hide() instead
of chaining activation signals, this got lost in a mix between
the big dash rewrite and ongoing changes to the Application well.

17 years agoAdd a desktop file for gnome-shell
Owen W. Taylor [Fri, 7 Aug 2009 17:10:39 +0000 (13:10 -0400)]
Add a desktop file for gnome-shell

Add a desktop file for GNOME Shell. This allows making GNOME Shell
your desktop default by adding it to your auto-start items.

http://bugzilla.gnome.org/show_bug.cgi?id=591089

17 years agoBug 589316 - Add application/window icon to overlay windows
Colin Walters [Thu, 23 Jul 2009 21:36:41 +0000 (17:36 -0400)]
Bug 589316 - Add application/window icon to overlay windows

To better distinguish between vast fields of white of which many
windows are composed, add the application icon to the bottom
right of the window.

We fade them in to avoid an abrupt feel.  The icons are in the
workspaces group, not individual workspace groups to avoid
having to adjust them when we scale the workspaces.

Replace Workspace._lookupIndexAndClone with Workspace.lookupIndex,
and make the caller go from index to clone, or clone and index.

17 years agodnd: Emit drag-end in after snapback complete
Colin Walters [Thu, 23 Jul 2009 21:34:01 +0000 (17:34 -0400)]
dnd: Emit drag-end in after snapback complete

Emit the signal at the correct time to take action
on snapback (i.e. after the end of the snapback animation).

Add a boolean to the drag-end signal saying whether it was accepted,
which ensures consumers know whether the drag was successful.

17 years agoRemove residual references to libXScrnSaver in required packages
Milan Bouchet-Valat [Fri, 7 Aug 2009 13:28:05 +0000 (15:28 +0200)]
Remove residual references to libXScrnSaver in required packages

See 5527fa2bc34f665f02d7ca63de3fbf2a3e42e2eb. Now that we don't use it at all, no need to install the package either.

17 years agoRemove residual references to libXScrnSaver
Owen W. Taylor [Thu, 6 Aug 2009 22:26:57 +0000 (18:26 -0400)]
Remove residual references to libXScrnSaver

Now that we are no longer using the screen saver X extension, remove the check
for the .pc file and the include of the header file.

17 years agoCheck the result of fgets() to deal with warn_unused_result
Owen W. Taylor [Thu, 6 Aug 2009 21:59:20 +0000 (17:59 -0400)]
Check the result of fgets() to deal with warn_unused_result

Some C library versions have __attribute__((warn_unused_result)) on
fgets(). We really don't care since we are just throwing the data
away, but check the result anyways.

17 years agoTurn on "silent-rules" for automake >= 1.11
Owen W. Taylor [Thu, 6 Aug 2009 20:56:06 +0000 (16:56 -0400)]
Turn on "silent-rules" for automake >= 1.11

When AM_SILENT_RULES is available, use it to strip down the output
of make so we can see what's important rather than gigantic long
compile lines.

Use 'make V=1' to see everything again.

Fix a couple of places where we had 'cmp' rather than 'cmp' and were
getting standard-error spew about missing files when generating
enum-types.h files.

http://bugzilla.gnome.org/show_bug.cgi?id=591002

17 years agoFix compiler warnings
Owen W. Taylor [Thu, 6 Aug 2009 20:39:15 +0000 (16:39 -0400)]
Fix compiler warnings

src/shell-global.c src/shell-process.c: Remove dead code
src/shell-texture-cache.c src/shell-status-menu.c: Remove
  <foo>_new() functions that weren't in the header file and
  not used anyways:
src/shell-texture-cache.[ch]: Fix a prototype that used ()
  when (void) was intended.

http://bugzilla.gnome.org/show_bug.cgi?id=590998

17 years agoTurn on -Werror and -Wmissing-prototypes
Owen W. Taylor [Thu, 6 Aug 2009 20:26:45 +0000 (16:26 -0400)]
Turn on -Werror and -Wmissing-prototypes

When compiling with GCC turn on -Wmissing-prototypes, and by default
turn on -Werror as well.

As with most gnome modules:

 --enable-compile-warnings=minimum/maximum

Can be used to disable -Werror (they are the same)

http://bugzilla.gnome.org/show_bug.cgi?id=590998

17 years agoTweak sizing of windows in overview
Owen W. Taylor [Thu, 6 Aug 2009 19:14:57 +0000 (15:14 -0400)]
Tweak sizing of windows in overview

Tweak arrangements with 2,3,4,5 windows in a desktop so:

 - Windows are a bit bigger
 - All windows for 5 windows are equally sized instead of making
   the windows in the bottom row larger

This does cause some more problems with tall windows overlapping
or running off the edge of the workspace, but it's an overall
small improvement to the behavior.

17 years agoInitialize GStreamer from shell_recorder_init()
Owen W. Taylor [Thu, 6 Aug 2009 19:07:55 +0000 (15:07 -0400)]
Initialize GStreamer from shell_recorder_init()

Move the GStreamer initialization from the Javascript code into
shell_recorder_init(). This avoids a dependency on the GStreamer
introspection information and will make it easier to drop the
gir-repository module dependency.

17 years agoReplace _getIndexOfDisplayedActor with a function in OverflowList
Siegfried-Angel Gevatter Pujals [Thu, 6 Aug 2009 17:51:11 +0000 (19:51 +0200)]
Replace _getIndexOfDisplayedActor with a function in OverflowList

Said function in genericDisplay.js was returning the index of the
actor based upon its position in the entire list, while everywhere
else indexes relative to the currently displayed page were used.

This made actions in the details pane break (bug #590949), so I
replace it with a new function in shell-overflow-list.c,
shell_overflow_list_get_actor_index, which is page based.

17 years agoFix incorrect variable name: mimeType -> this.mimeType.
Siegfried-Angel Gevatter Pujals [Thu, 6 Aug 2009 15:25:58 +0000 (17:25 +0200)]
Fix incorrect variable name: mimeType -> this.mimeType.

17 years agoShellAppMonitor: Fix case of not seeing apps being closed
Colin Walters [Thu, 6 Aug 2009 00:07:30 +0000 (20:07 -0400)]
ShellAppMonitor: Fix case of not seeing apps being closed

Remove the app from the window_to_app hash *before* emitting
CHANGED, otherwise a signal handler could see stale data.

17 years agoClear text in the run dialog when it's hidden with escape
Siegfried-Angel Gevatter Pujals [Thu, 6 Aug 2009 00:04:04 +0000 (02:04 +0200)]
Clear text in the run dialog when it's hidden with escape

17 years agoFix indentation issues in altTab.js, plus minor cleanup in some other files.
Siegfried-Angel Gevatter Pujals [Wed, 5 Aug 2009 23:54:22 +0000 (01:54 +0200)]
Fix indentation issues in altTab.js, plus minor cleanup in some other files.

17 years agoBug 589086 - Fix non-integer positioning in altTab
Colin Walters [Sun, 2 Aug 2009 19:49:10 +0000 (15:49 -0400)]
Bug 589086 - Fix non-integer positioning in altTab

Non-integer makes fonts look awful.  Fix this by rounding
down.

17 years agoAdd ShellGenericContainer, which makes it possible to write containers in JS
Colin Walters [Tue, 4 Aug 2009 20:08:59 +0000 (16:08 -0400)]
Add ShellGenericContainer, which makes it possible to write containers in JS

Subclass ClutterGroup (to avoid having to implement all of dispose,
raise, lower, add, etc.), and have it proxy the allocation requests
out into signals.  We have to group up the two out parameters
into a struct unfortunately.

Included example code in the C file source for now.

17 years agoInstall missing svg files. #590814
Dan Winship [Wed, 5 Aug 2009 12:59:57 +0000 (08:59 -0400)]
Install missing svg files. #590814

17 years agoAdd dash.js to js/ui/Makefile.am. #590813
Dan Winship [Wed, 5 Aug 2009 12:58:35 +0000 (08:58 -0400)]
Add dash.js to js/ui/Makefile.am. #590813

17 years agoRewrite Dash, remove hardcoded width/height from GenericDisplay
Colin Walters [Sat, 1 Aug 2009 02:12:01 +0000 (22:12 -0400)]
Rewrite Dash, remove hardcoded width/height from GenericDisplay

This patch is a near-total rewrite of the Dash.  First, the dash
code moves into a separate file, dash.js.

Inside dash.js, the components are more broken up into separate
classes; in particular there's now a Pane class and a MoreLink
class.  Instead of each section of the dash, when activated,
attempting to close all N-1 other sections, instead there
is the concept of a single "active pane", and when e.g. activating
the More link for documents, if we know there's an active pane
which happens to be the apps, close it.

Many redundant containers were removed from the dash, and all
manual width, height and x/y offsets are entirely gone.  We move
the visual apperance closer to the design by using the view-more.svg,
etc.

To complete the removal of height/width calculations from the dash,
we also had to do the same for GenericDisplay.  Also clean up
the positioning inside overlay.js so calculation of children's
positioning is inside a single function that flows from screen.width
and screen.height, so in the future we can stop passing the width
into the Dash constructor and call this once and work on screen
resizing.

17 years agoBug 588343 - Major rework of window monitoring to be application-based
Colin Walters [Thu, 30 Jul 2009 19:40:26 +0000 (15:40 -0400)]
Bug 588343 - Major rework of window monitoring to be application-based

The previous application monitoring code was originally designed
to be based on WM_CLASS, which was then resolved on a server.
We have that resolution code locally now, so instead
of saving WM_CLASS data, save application IDs.

Also, inside the WM we have a much better
infrastructure for tracking windows.  In particular, rather
than polling, we can just watch for focus notification on
the display, and window add/remove.

Instead of polling XScreensaver, use DBus to watch org.gnome.Session
which already has an idle time watch.

Now there is no polling at all inside the monitor.

17 years agoBug 589276 - Use 0 opacity while loading textures, preserve aspect ratio by default
Colin Walters [Tue, 4 Aug 2009 16:28:12 +0000 (12:28 -0400)]
Bug 589276 - Use 0 opacity while loading textures, preserve aspect ratio by default

When we fail to load a texture, make sure we keep it 0 opacity to avoid
a white square.  Also this is useful to avoid the square while loading
a texture asynchronously.

17 years agolookingGlass: Add hierarchy list and property inspector
Colin Walters [Tue, 4 Aug 2009 13:49:03 +0000 (09:49 -0400)]
lookingGlass: Add hierarchy list and property inspector

Add a Notebook class which we then use to pack in separate Hierarchy
and Properties tabs.

Split out the inspector into its own class to avoid bloat in the
main class.

17 years agolookingGlass: Add to Makefile.am
Halton Huo [Tue, 4 Aug 2009 13:54:42 +0000 (09:54 -0400)]
lookingGlass: Add to Makefile.am

Signed-off-by: Colin Walters <walters@verbum.org>
17 years agolookingGlass: Draw a red border around target actor
Colin Walters [Tue, 4 Aug 2009 13:48:15 +0000 (09:48 -0400)]
lookingGlass: Draw a red border around target actor

17 years agolookingGlass: Faster history save, avoid empty lines
Colin Walters [Tue, 4 Aug 2009 05:37:54 +0000 (01:37 -0400)]
lookingGlass: Faster history save, avoid empty lines

5 seconds is should help ensure we lose work less often on
Alt-f2 restart.

Avoid saving empty lines to history, and filter them out if
we find them.

Minor fixes for the still-not-enabled inspector.

17 years agoAdjust tray spacing to cope with many icons
Colin Walters [Sun, 2 Aug 2009 02:11:37 +0000 (22:11 -0400)]
Adjust tray spacing to cope with many icons

This patch attempts to adjust if we have many tray icons; currently
the simple algorithm is to drop down to a spacing of 8 if we have
more than 6.  In the future we should fix the panel layout so that
the clock moves to the side.

17 years agoFix 'redeclaration of global' error in lookingGlass.js.
Siegfried-Angel Gevatter Pujals [Tue, 4 Aug 2009 00:36:53 +0000 (02:36 +0200)]
Fix 'redeclaration of global' error in lookingGlass.js.

17 years agolookingGlass: Fix spacing and line appearance
Colin Walters [Tue, 4 Aug 2009 00:21:07 +0000 (20:21 -0400)]
lookingGlass: Fix spacing and line appearance

17 years agoLookingGlass - JavaScript prompt and interactive Clutter controller
Colin Walters [Sun, 2 Aug 2009 07:46:01 +0000 (03:46 -0400)]
LookingGlass - JavaScript prompt and interactive Clutter controller

Add a dropdown pane triggered by Alt-F2, "lg" which supports interactive
JavaScript evaluation, saving/restoring a history file, as well as
an inspector element to pick by using the mouse.

17 years agoCleanups for runDialog
Colin Walters [Mon, 3 Aug 2009 21:52:45 +0000 (17:52 -0400)]
Cleanups for runDialog

Using an internal boolean rather than the visibility property seems
more reliable to me.  Add a list of internal functions rather than
an if/else chain, so for example an extension could hook something on.

Delete the javascript evaluator in favor of the upcoming lookingGlass.js.

17 years agoAdd mesa-utils to build-setup.sh for Debian/Utils
Owen W. Taylor [Mon, 3 Aug 2009 19:12:03 +0000 (15:12 -0400)]
Add mesa-utils to build-setup.sh for Debian/Utils

At least on Ubuntu 9.04 and Debian Squeeze, glxinfo is in the
mesa-utils package, so pull that in.

Reported by Flamarion Jorge
http://bugzilla.gnome.org/show_bug.cgi?id=590480

17 years agoFix the amount of fitting elements calculation in the OverflowList
Siegfried-Angel Gevatter Pujals [Sun, 2 Aug 2009 18:06:32 +0000 (20:06 +0200)]
Fix the amount of fitting elements calculation in the OverflowList

Before this in certain conditions (depending on the available
height) two items could be drawn in the same position. Bug #590278.

17 years agoGive the runDialog a rounded corner
Colin Walters [Sun, 2 Aug 2009 01:46:02 +0000 (21:46 -0400)]
Give the runDialog a rounded corner

Just makes things a bit nicer looking.

17 years agoBug 589937 - Raise clone on window activation
Colin Walters [Fri, 31 Jul 2009 21:20:26 +0000 (17:20 -0400)]
Bug 589937 - Raise clone on window activation

We had duplicate code in appDisplay and workspaces for handling activating
a window; unify that inside workspaces, add an API to Main.overlay to
access it from both contexts.

Also, explicitly raise the clone we're activating to the top
before starting the animation to leave the overlay.

17 years agoRemove taskpanel
Jon Nettleton [Fri, 31 Jul 2009 21:40:46 +0000 (17:40 -0400)]
Remove taskpanel

The new design doesn't have the task panel at the bottom; remove it.

Signed-off-by: Colin Walters <walters@verbum.org>
17 years agoMove drawing functions from shell-global into new shell-drawing.c file
Colin Walters [Fri, 31 Jul 2009 20:32:24 +0000 (16:32 -0400)]
Move drawing functions from shell-global into new shell-drawing.c file

Just to avoid shell-global.c bloat.

17 years agoFix details pane repositioning
Siegfried-Angel Gevatter Pujals [Fri, 31 Jul 2009 14:08:39 +0000 (16:08 +0200)]
Fix details pane repositioning

Two calls to _repositionDetails() were done too early,
before the visibility of the results pane had changed,
so they had no effect. Thus when a search was done while
a details pane was active, the pane with the results was
hidden by the details pane.

In addition to fixing this, move the two remaining calls to
the line after changing the results pane's visibility
to make it clearer why the calls are there.

17 years agoFix showing small item previews
Marina Zhurakhinskaya [Wed, 29 Jul 2009 21:47:50 +0000 (17:47 -0400)]
Fix showing small item previews

Don't use a clone of an actor that's not part of the scene graph for the
item previews. This patch fixes previews in the details pane for documents
for which we don't have full previews and for applications.

Use create_icon_texture() from AppInfo instead of looking up the file
for gicon when creating an application icon for the details pane.

17 years agoBug 589260 - Don't replace panel in Xephyr mode
Colin Walters [Wed, 29 Jul 2009 19:05:05 +0000 (15:05 -0400)]
Bug 589260 - Don't replace panel in Xephyr mode

Avoid grabbing the org.gnome.Panel name if we're running in
Xephyr, since that affects the main desktop.

17 years agoAdd appInfo.get_desktop_file_path method
Siegfried-Angel Gevatter Pujals [Wed, 29 Jul 2009 21:36:48 +0000 (23:36 +0200)]
Add appInfo.get_desktop_file_path method

Add shell_app_info_get_desktop_file_path, matching *_get_executable,
*_get_id, etc. This is useful for Zeitgeist.

17 years agoToggle the info pane when clicking the info icon (#587550)
Siegfried-Angel Gevatter Pujals [Wed, 29 Jul 2009 17:35:11 +0000 (19:35 +0200)]
Toggle the info pane when clicking the info icon (#587550)

Now clicking on the information icon of the same item a second
time will hide the details pane. Clicking it another time will
show it again, etc.

This is achieved by adding a 'toggle-details' signal which
switches the visibility of the details pane.

Other than the necessary changes, function _selectIndex (in
genericDisplay.js) has been restructured a bit to avoid
duplicating checks.

17 years agoUpdate to using Clutter 1.0
Colin Walters [Wed, 29 Jul 2009 17:00:11 +0000 (13:00 -0400)]
Update to using Clutter 1.0

Change the pkg-config and .gir requirements.

17 years agoReplace lastVisited method in DocInfo with timestamp attribute
Siegfried-Angel Gevatter Pujals [Sat, 25 Jul 2009 15:00:37 +0000 (17:00 +0200)]
Replace lastVisited method in DocInfo with timestamp attribute

This is not only more consistent with the name, uri and
mimeType attributes, but makes adding Zeitgeist support easier.

17 years agoChanged logout menu to include Log Out and Shutdown options, #583955
Jonathan Blandford [Tue, 28 Jul 2009 03:28:00 +0000 (23:28 -0400)]
Changed logout menu to include Log Out and Shutdown options, #583955

17 years agoAlign category labels vertically
Marina Zhurakhinskaya [Mon, 27 Jul 2009 22:59:26 +0000 (18:59 -0400)]
Align category labels vertically

Add a box to contain the MenuItem labels and align them vertically.

Clean up the style in the MenuItem code.

17 years agoDon't line wrap application names in wells, fix running alignment
Colin Walters [Mon, 27 Jul 2009 21:47:28 +0000 (17:47 -0400)]
Don't line wrap application names in wells, fix running alignment

The experiment with avoiding ellipsization was a definite failure;
several translations have very long names, and we'd end up
with a single column.

Also fix extra padding; we only want some space at the top, not
left/right.

17 years agoRemove unused gdm-user-chooser-*.[ch] files
Colin Walters [Mon, 27 Jul 2009 21:21:09 +0000 (17:21 -0400)]
Remove unused gdm-user-chooser-*.[ch] files

These widgets aren't currently used, delete them for now.

17 years agoDocsWidget -> RecentDocsWidget
Siegfried-Angel Gevatter Pujals [Mon, 27 Jul 2009 16:18:17 +0000 (18:18 +0200)]
DocsWidget -> RecentDocsWidget

Rename DocsWidget to RecentDocsWidget (as widgets for most used docs,
docs related to the currently open documents, etc. may be added in the
future), and change the title so that it doesn't abbreviate 'Docs' (for
consistency with the overlay).

17 years agoAvoid ellipsizing app names; Draw glow around running
Colin Walters [Sat, 4 Jul 2009 21:28:34 +0000 (17:28 -0400)]
Avoid ellipsizing app names; Draw glow around running

Corresponding with the design, if an application is in a running
state (has > 0 windows open), draw a glow behind the name.

To make the display look a bit nicer, set the width of each item
to be equal to the longest word among all the items.

17 years agoMake dash background darker
Marina Zhurakhinskaya [Fri, 24 Jul 2009 21:25:20 +0000 (17:25 -0400)]
Make dash background darker

Make dash background darker so that the blue color used for indicating
running apps can be visible. Use the dark blue (almost black) color from
Jeremy's mockup.

Make the dash height be the full screen height minus the height of the panel.
Don't use padding on top or on the bottom.

Remove the border from the main dash, but leave it for the results and details
panes. Make the border slightly transparent.

Make sure the details pane is correctly positioned by not applying the
additional padding when determining its x position.

17 years agoReturn false from the timeout callback function
Marina Zhurakhinskaya [Fri, 24 Jul 2009 16:58:53 +0000 (12:58 -0400)]
Return false from the timeout callback function

Timeout callback function should not be rescheduled again with the same timeout
because we compute a new timeout and schedule it again instead. So the callback
function needs to return false to not be scheduled again by default.

17 years agoBug 589437 - Switch to workspace of target app to activate
Colin Walters [Wed, 22 Jul 2009 22:57:33 +0000 (18:57 -0400)]
Bug 589437 - Switch to workspace of target app to activate

The user explicitly selected a window, so take them to it.

17 years agoFix updating last visited time for the doc display items.
Marina Zhurakhinskaya [Wed, 22 Jul 2009 22:57:05 +0000 (18:57 -0400)]
Fix updating last visited time for the doc display items.

Make sure that we calculate the next update time correctly.

Store timeout time instead of the timeout delta, so that it doesn't get outdated.

Create a new callback when the time update happens for the original callback.

Make sure last visited time is updated in the details pane by keeping track
of the description actors created for the detail actors.

Add comments to the new functions.

17 years agoFix time updating for recent files
Colin Walters [Wed, 22 Jul 2009 16:46:05 +0000 (12:46 -0400)]
Fix time updating for recent files

17 years agoMerge branch 'bug589185-docinfo-time'
Colin Walters [Wed, 22 Jul 2009 16:11:06 +0000 (12:11 -0400)]
Merge branch 'bug589185-docinfo-time'

17 years agoDisplay last visited time as docInfo description
Colin Walters [Mon, 20 Jul 2009 21:56:47 +0000 (17:56 -0400)]
Display last visited time as docInfo description

It's useful information, and takes up some of the blank space.

17 years agoFix prototype for shell_app_monitor_get_window_app
Colin Walters [Wed, 22 Jul 2009 01:27:56 +0000 (21:27 -0400)]
Fix prototype for shell_app_monitor_get_window_app

It contained a stale definition for the old version of _id, it
now returns the app.

17 years agoIf org.gnome.Panel exists on the bus, replace it rather than using gdb
Colin Walters [Tue, 21 Jul 2009 14:50:18 +0000 (10:50 -0400)]
If org.gnome.Panel exists on the bus, replace it rather than using gdb

Avoid depending on gdb for replacing an existing panel, since it
requires debuginfo and gdb installed.

Instead we grab the org.gnome.Panel DBus name, using DBus name
replacement semantics.

17 years agoFix reference counting of textures loaded via _load_uri_sync
Colin Walters [Mon, 20 Jul 2009 22:19:50 +0000 (18:19 -0400)]
Fix reference counting of textures loaded via _load_uri_sync

Avoid double unref, fixes image previews.

17 years agoBug 588050 - Cache information icon forever, only look up recent once
Colin Walters [Thu, 16 Jul 2009 21:44:50 +0000 (17:44 -0400)]
Bug 588050 - Cache information icon forever, only look up recent once

Extend ShellTextureCache by adding the concept of a policy, which
we expose to the public API for loading URIs.

This lets us have the shell tell the cache to keep the information
icon texture around forever.

Secondly, fix the caching of recent info; we shouldn't always be
loading the backup pixbuf.  Move recent info loading entirely
into ShellTextureCache.

17 years agoFix srcdir != builddir issue when installing schemeas
Owen W. Taylor [Fri, 17 Jul 2009 17:08:32 +0000 (13:08 -0400)]
Fix srcdir != builddir issue when installing schemeas

Since we aren't (currently) generating our GConf schemas by merging in
.po files, the schemas file is in sourcedir not builddir.

17 years agoBug 588462 - Use a plain black panel with a different layout
Sander Dijkhuis [Mon, 13 Jul 2009 16:49:06 +0000 (18:49 +0200)]
Bug 588462 - Use a plain black panel with a different layout

The semi-transparent gradient on the panel is replaced by a
solid black background. The shadow below the panel is removed.
The clock is put at the center instead of the right side of
the panel and has the date removed. The user icon is hidden.
Instead of boldface, a regular font is used. Padding is added
on each side and between panel elements.

button.js: Allow for custom text colors and fonts.
panel.js: Change the panel colors and layout, remove the shadow.

17 years agoBug 588173 - No remove button on the first workspace
Sander Dijkhuis [Tue, 14 Jul 2009 12:37:21 +0000 (14:37 +0200)]
Bug 588173 - No remove button on the first workspace

If there is only one workspace and it's empty, it should
not get a remove button. Add a workspaceNum != 0 check to
workspaces.js.

17 years agoMerge branch 'bug588050-doc-textures'
Colin Walters [Mon, 13 Jul 2009 20:24:55 +0000 (16:24 -0400)]
Merge branch 'bug588050-doc-textures'

17 years agoAlways clear details pane when unsetting more mode
Colin Walters [Sat, 11 Jul 2009 16:33:57 +0000 (12:33 -0400)]
Always clear details pane when unsetting more mode

We don't want a detail pane hanging around for an item no
longer visible.

17 years agoFixes for GenericDisplay
Colin Walters [Sat, 11 Jul 2009 16:26:36 +0000 (12:26 -0400)]
Fixes for GenericDisplay

GenericDisplay wasn't quite completely converted to the ShellOverflowList
model.  Since the list now holds all actors, the indexing/wrapping
was incorrect.

Add a property which lets us keep track of how many items are displayed,
use this in genericDisplay.

Avoid setting selectedIndex to -2 when going up with no items.

If we're not displaying any results at all, don't attempt keynav (for now).

17 years agoBug 588445 - Use BigBox vertical alignment for the clock
Sander Dijkhuis [Mon, 13 Jul 2009 12:44:54 +0000 (14:44 +0200)]
Bug 588445 - Use BigBox vertical alignment for the clock

panel.js: Replace the manual vertical padding calculation
    for the panel's clock with an y_align property on its
    BigBox container.

17 years agoBug 588405 - Handle status menu button appearance in JavaScript
Sander Dijkhuis [Sun, 12 Jul 2009 21:44:06 +0000 (23:44 +0200)]
Bug 588405 - Handle status menu button appearance in JavaScript

Make the ClutterText and ClutterTexture from the status menu
button available to JavaScript, and from there improve the
font definition of the user name.

shell-status-menu.[ch]: Add public get_name() and get_icon()
    functions that return the user name label and icon
    texture, remove the markup from update_name_text().
panel.js: Set the font for the button consistently with that
    of the other panel labels.

17 years agoBug 587955 - Small cleanups to iconButton
Milan Bouchet-Valat [Sat, 11 Jul 2009 16:44:21 +0000 (18:44 +0200)]
Bug 587955 - Small cleanups to iconButton

Missing trailing ; after "this._fadeOut()". A few missing spaces after "if". Parameter inconsistently named "icon" instead of "texture".

17 years agoSmall fixes for sidebar application bits
Colin Walters [Fri, 10 Jul 2009 21:04:39 +0000 (17:04 -0400)]
Small fixes for sidebar application bits

We need to set the .name property, also skip unknown apps.

17 years agoBug 587949 - Handle locale-encoded names from struct pwent
Colin Walters [Wed, 8 Jul 2009 00:56:01 +0000 (20:56 -0400)]
Bug 587949 - Handle locale-encoded names from struct pwent

Convert to utf8 internally.

17 years agoMerge up to commit 92e608bd0f3807314c45ee5f5daf6ba781c27d58 of gdm
Colin Walters [Wed, 8 Jul 2009 00:45:43 +0000 (20:45 -0400)]
Merge up to commit 92e608bd0f3807314c45ee5f5daf6ba781c27d58 of gdm

Pull in a few fixes from gdm trunk for gdm-user.c

17 years agoBetter caching for document textures and information
Colin Walters [Thu, 9 Jul 2009 01:06:06 +0000 (21:06 -0400)]
Better caching for document textures and information

Move thumbnail creation into ShellTextureCache.  It's now asynchronous,
and we cache the result.

Create a DocManager class which keeps around the DocInfo objects between
invocations.  This is also where we ensure we remove thumbnails for
recent items not known anymore.

17 years agoAdd magic "js " prefix to runDialog to run arbitrary JavaScript
Colin Walters [Wed, 8 Jul 2009 21:30:09 +0000 (17:30 -0400)]
Add magic "js " prefix to runDialog to run arbitrary JavaScript

This is useful for debugging things; e.g. you can "js Meta.quit(0)"
to exit the WM, "js Shell.Global.get().<whatever>..." etc.

17 years agoDon't fail if we can't find an application
Colin Walters [Wed, 8 Jul 2009 15:54:15 +0000 (11:54 -0400)]
Don't fail if we can't find an application

Instead of logging and passing null through, explicitly skip
apps we don't know about.  It's valid to have say uninstalled
an app.

17 years agoBug 587952 - Immediately fade in information button
Colin Walters [Wed, 8 Jul 2009 00:02:47 +0000 (20:02 -0400)]
Bug 587952 - Immediately fade in information button

0.5s is a pretty long time, start immediate fade in.

17 years agoRemove inadvertent early return in apps search
Colin Walters [Wed, 8 Jul 2009 15:38:22 +0000 (11:38 -0400)]
Remove inadvertent early return in apps search

17 years agoMajor rework of application data structures and caching
Colin Walters [Tue, 7 Jul 2009 20:08:41 +0000 (16:08 -0400)]
Major rework of application data structures and caching

Before, we looked up application data in several ways; the ShellAppSystem
exported just application ids (though it parsed the .desktop files internally),
and we'd create a Gio.DesktopAppInfo object (reparsing the desktop file again),
wrapping that inside a JavaScript AppInfo class, and finally the AppDisplay
would again parse the .desktop file to get the categories.

Also, to look up applications by id previously, we traversed the entire
menu structure each time.

Some qualities such as the NoDisplay flag were not easily exposed in the old
system.  And if we wanted to expose them we'd have to change several different
application information wrapper classes.

All in all, it was quite suboptimal.

The theme of this new code is basically "just use libgnome-menus".  We do
not call into Gio for app lookups anymore.  The new Shell.AppInfo class
is a disguised pointer for the GMenuTreeEntry item.

To fix the caching, we keep a simple hash table of desktop id -> ShellAppInfo.

17 years agoReset page number when changing the active category
Siegfried-Angel Gevatter Pujals [Tue, 7 Jul 2009 10:20:17 +0000 (12:20 +0200)]
Reset page number when changing the active category

17 years agoFix DND to left side of the screen
Owen W. Taylor [Tue, 7 Jul 2009 09:51:56 +0000 (10:51 +0100)]
Fix DND to left side of the screen

Set the size of the Dash actor to 0x0 so that it doesn't
interfere with drag and drop.

http://bugzilla.gnome.org/show_bug.cgi?id=587899

17 years agoExplicitly include gio/gio.h in ShellGlobal
Colin Walters [Tue, 7 Jul 2009 03:13:58 +0000 (23:13 -0400)]
Explicitly include gio/gio.h in ShellGlobal

Because we use GFile.

17 years agoMore for applications now displays a category list
Colin Walters [Sat, 4 Jul 2009 16:46:35 +0000 (12:46 -0400)]
More for applications now displays a category list

Rework the previously extant Application category code to display
in the expanded list.  Add a "Frequent" category which corresponds
to the most_used_apps, and selected by default.

Instead of adding the background and shadow as expanded items to
the results/details panes as fixed, we slave the background/shadow
sizes to the results using notify::allocation.

Also clean up the code for sizing the details pane, using a common
function which adjusts its x position in one place.

17 years agoAdd ShellDrawingArea and ShellStack
Colin Walters [Mon, 29 Jun 2009 16:51:10 +0000 (12:51 -0400)]
Add ShellDrawingArea and ShellStack

ShellDrawingArea is a size-independent wrapper for a ClutterCairoTexture.
Useful when drawing non-fixed size areas.

ShellStack is a simple container class which holds items
in a completely overlapping Z stack.  The main difference
from ClutterGroup is that items will be constrained to
(and allocated) the size of the stack, not getting their
preferred size always.

17 years agoAppWell: If an application is running, activate an existing window
Colin Walters [Sat, 4 Jul 2009 21:13:13 +0000 (17:13 -0400)]
AppWell: If an application is running, activate an existing window

Instead of relaunching, pick the first window and activate

17 years agoAdd a sidebar show/hide menu item to the status menu
Dan Winship [Tue, 30 Jun 2009 19:00:06 +0000 (15:00 -0400)]
Add a sidebar show/hide menu item to the status menu

This is how it is in the mockups, but we may want to revisit it

17 years agoAdd GConf schemas for sidebar prefs, and use those prefs from sidebar.js
Dan Winship [Mon, 29 Jun 2009 16:13:23 +0000 (12:13 -0400)]
Add GConf schemas for sidebar prefs, and use those prefs from sidebar.js

17 years agoAdd ShellGConf
Dan Winship [Mon, 29 Jun 2009 16:07:10 +0000 (12:07 -0400)]
Add ShellGConf

Although methods like gconf_client_get/set_bool() and such are usable
from gjs, get_list/set_list is not, since there's only one method for
all list types. So ShellGConf wraps GConfClient and adds separate
typed list methods.

Also, add a detailed "changed" signal that can easily be connected to
from js, since we can't currently use gconf_client_notify_add()
directly.